package com.yue.pattern.singleton;

/**
 * 内部类方式 单例
 *
 * 默认使用LazyInner的时候会先初始化 内部类，然后再初始化LazyInner，如果没有使用的话，内部类是不加载的。
 */
public class LazyInner {

    public static final LazyInner getInstance(){
        return LazyHolder.LAZY;
    }


    private static class LazyHolder{
        private static final LazyInner LAZY = new LazyInner();
    }









    /*
    //默认没有初始化表示
    private static boolean initialized = false;

    private LazyInner(){
        synchronized (LazyInner.class){
            if(initialized == false){
                initialized = true;
            }else {
                throw new RuntimeException("单例已被侵犯");
            }
        }
    }*/

}
